Uniform Type Identifier
   HOME

TheInfoList



OR:

A Uniform Type Identifier (UTI) is a text string used on software provided by Apple Inc. to uniquely identify a given class or type of item. Apple provides built-in UTIs to identify common system objects – document or image file types, folders and application bundles, streaming data, clipping data, movie data – and allows third party developers to add their own UTIs for application-specific or proprietary uses. Support for UTIs was added in the
Mac OS X macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and lap ...
10.4 operating system, integrated into the
Spotlight Spotlight or spot light may refer to: Lighting * Spot lights, automotive auxiliary lamps * Spotlight (theatre lighting) * Spotlight, a searchlight * Stage lighting instrument, stage lighting instruments, of several types Art, entertainment, an ...
desktop search technology, which uses UTIs to categorize documents. One of the primary design goals of UTIs was to eliminate the ambiguities and problems associated with inferring a file's content from its
MIME type A media type (also known as a MIME type) is a two-part identifier for file formats and format contents transmitted on the Internet. The Internet Assigned Numbers Authority (IANA) is the official authority for the standardization and publication o ...
,
filename extension A filename extension, file name extension or file extension is a suffix to the name of a computer file (e.g., .txt, .docx, .md). The extension indicates a characteristic of the file contents or its intended use. A filename extension is typically ...
, or type or
creator code A creator code is a mechanism introduced in the classic Mac OS to link a data file to the application program which created it. The similar type code held the file type, like "TEXT". Together, the type and creator indicated what application shoul ...
. UTIs use a reverse-DNS naming structure. Names may include the
ASCII ASCII ( ), abbreviated from American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Because ...
characters A–Z, a–z, 0–9, hyphen ("-"), and period ("."), and all
Unicode Unicode, formally The Unicode Standard,The formal version reference is is an information technology standard for the consistent encoding, representation, and handling of text expressed in most of the world's writing systems. The standard, ...
characters above U+007F. Colons and slashes are prohibited for compatibility with Macintosh and
POSIX The Portable Operating System Interface (POSIX) is a family of standards specified by the IEEE Computer Society for maintaining compatibility between operating systems. POSIX defines both the system- and user-level application programming in ...
file path conventions. UTIs support
multiple inheritance Multiple inheritance is a feature of some object-oriented computer programming languages in which an object or class can inherit features from more than one parent object or parent class. It is distinct from single inheritance, where an object or ...
, allowing files to be identified with any number of relevant types, as appropriate to the contained data. UTIs are case-insensitive.


Background

One of the difficulties in maintaining a user-accessible
operating system An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs. Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
is establishing connections between data types and the applications or processes that can effectively use such data. For example, a file that contains picture data in a particular compression format can only be opened and processed in applications that are capable of handling picture data, and those applications must be able to identify which compression type was used in order to extract and work with that data. In early computer systems – particularly
DOS DOS is shorthand for the MS-DOS and IBM PC DOS family of operating systems. DOS may also refer to: Computing * Data over signalling (DoS), multiplexing data onto a signalling channel * Denial-of-service attack (DoS), an attack on a communicat ...
, its variants, and some versions of
Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for se ...
– file associations are maintained by file extensions. The three to four character code following a file name instructs the system to open the file in particular applications. Beginning with
System 1 The Macintosh "System 1" is the first version of Apple Macintosh operating system and the beginning of the classic Mac OS series. It was developed for the Motorola 68000 microprocessor. System 1 was released on January 24, 1984, along with th ...
,
Macintosh The Mac (known as Macintosh until 1999) is a family of personal computers designed and marketed by Apple Inc., Apple Inc. Macs are known for their ease of use and minimalist designs, and are popular among students, creative professionals, and ...
operating systems have attached
type code The resource fork is a fork (file system), fork or section of a computer file, file on Apple Inc., Apple's classic Mac OS operating system, which was also carried over to the modern macOS for compatibility, used to store structured data along with t ...
s and
creator code A creator code is a mechanism introduced in the classic Mac OS to link a data file to the application program which created it. The similar type code held the file type, like "TEXT". Together, the type and creator indicated what application shoul ...
s as part of the file
metadata Metadata is "data that provides information about other data", but not the content of the data, such as the text of a message or the image itself. There are many distinct types of metadata, including: * Descriptive metadata – the descriptive ...
. These four-character codes were designed to specify both the application that created the file (the creator code) and the specific type of the file (the type code) so that other applications could easily open and process the file data. However, while type and creator codes extended the flexibility of the system — a particular type of file was not restricted to opening in a particular application — they suffered many of the same problems as file extensions. Type and creator codes could be lost when files were transferred across non-Macintosh systems (such as Unix-based servers), and the plethora of type codes made identification problematic. In addition, the
classic Mac OS Mac OS (originally System Software; retronym: Classic Mac OS) is the series of operating systems developed for the Macintosh family of personal computers by Apple Computer from 1984 to 2001, starting with System 1 and ending with Mac OS 9. ...
did not recognize file extensions at all, leading to unrecognized file errors when files were transferred from DOS/Windows systems.
OPENSTEP OpenStep is a defunct object-oriented application programming interface (API) specification for a legacy object-oriented operating system, with the basic goal of offering a NeXTSTEP-like environment on non-NeXTSTEP operating systems. OpenStep wa ...
, which formed the basis of Mac OS X, used extensions, and early versions of Mac OS X followed suit. This led to some controversy with users and developers coming to OS X from NeXT or Windows origins advocating for continued use of file extensions, and those coming from Classic Mac OS urging Apple to replace or supplement file extensions with type and creators. Other file identification types exist: for example, MIME types are used for identifying data that is transferred over the web. However, Apple's UTI system was designed to create a flexible file association system that would describe data hierarchically and allow for better categorization and searching, standardize data descriptions across contexts, and provide a uniform method of expanding data types. For instance, the ''public.jpeg'' and ''public.png'' UTIs inherit from the ''public.image'' UTI, allowing users to search narrowly for JPEG images or PNG images or broadly for any kind of image merely by changing the specificity of the UTI used in the search. Further, application developers who design new data types can easily extend the UTIs available. For example, a new image format developed by a company may have a UTI of ''com.company.proprietary-image'' and be specified to inherit from the ''public.image'' type. Apple's
macOS macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac computers. Within the market of desktop and la ...
continues to support other forms of file association, and contains utilities for translating between them, but will use UTIs by preference where available.


UTI structure

Apple maintains the domain as a set base data types for all UTIs. Other UTIs are associated with these base UTIs by conformance, a system similar to class inheritance. UTIs that conform to other UTIs share a basic types, and in general any application that works with data of a more general UTI should be able to work with data of any UTI that conforms to that general UTI.


Apple public UTIs

The most basic public UTIs in the Apple hierarchy are as follows: UTIs are even used to identify other file type identifiers: Dynamic UTIs can be created as needed by applications; these have the prefix and take the form of "a UTI-compatible wrapper around an otherwise unknown filename extension, MIME type, OSType, and so on."


Third-party UTIs

Apple provides a large collection o
system-declared Uniform Type Identifiers
Third-party applications can add UTIs to the database maintained by macOS by "exporting" UTIs declared within the application package. Because new UTIs can be declared to "conform to" existing system UTIs, and declarations can associate the new UTIs with file extensions, an exported declaration alone can provide the operating system with enough information to enable new functions, such as enabling
Quick Look Quick Look is a quick preview feature developed by Apple Inc. which was introduced in its operating system Mac OS X 10.5 Leopard. The feature was announced at the Worldwide Developers Conference on Jun. 11, 2007. While macOS's Finder has alway ...
for new file types.


List of common third-party UTIs


Looking up a UTI

To get the UTI of a given file, use the
mdls Spotlight is a system-wide desktop search feature of Apple Inc., Apple's macOS and iOS operating systems. Spotlight is a selection-based search system, which creates an index of all items and files on the system. It is designed to allow the user ...
(meta data list, part of
Spotlight Spotlight or spot light may refer to: Lighting * Spot lights, automotive auxiliary lamps * Spotlight (theatre lighting) * Spotlight, a searchlight * Stage lighting instrument, stage lighting instruments, of several types Art, entertainment, an ...
) command in the
Terminal Terminal may refer to: Computing Hardware * Terminal (electronics), a device for joining electrical circuits together * Terminal (telecommunication), a device communicating over a line * Computer terminal, a set of primary input and output devi ...
.


References

{{macOS MacOS Metadata